package com.ruoyi.znjc.mapper;

import java.util.List;
import java.util.Map;

import com.ruoyi.znjc.domain.ZnjcTimers;
import org.apache.ibatis.annotations.MapKey;

/**
 * 预警定时Mapper接口
 * 
 * @author ruoyi
 * @date 2025-07-26
 */
public interface ZnjcTimersMapper 
{
    /**
     * 查询预警定时
     * 
     * @param timerId 预警定时主键
     * @return 预警定时
     */
    public ZnjcTimers selectZnjcTimersByTimerId(Long timerId);

    /**
     * 查询预警定时列表
     * 
     * @param znjcTimers 预警定时
     * @return 预警定时集合
     */
    public List<ZnjcTimers> selectZnjcTimersList(ZnjcTimers znjcTimers);

    /**
     * 新增预警定时
     * 
     * @param znjcTimers 预警定时
     * @return 结果
     */
    public int insertZnjcTimers(ZnjcTimers znjcTimers);

    /**
     * 修改预警定时
     * 
     * @param znjcTimers 预警定时
     * @return 结果
     */
    public int updateZnjcTimers(ZnjcTimers znjcTimers);

    /**
     * 删除预警定时
     * 
     * @param timerId 预警定时主键
     * @return 结果
     */
    public int deleteZnjcTimersByTimerId(Long timerId);

    /**
     * 批量删除预警定时
     * 
     * @param timerIds 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteZnjcTimersByTimerIds(Long[] timerIds);


    /**
     * 根据 timerId 查询关联的规则内容和其他字段
     *
     * @param timerId 定时器主键
     * @return 包含规则内容等字段的 Map
     */
    @MapKey("")
    Map<String, Object> selectRuleInfoByTimerId(Long timerId);



}
